home *** CD-ROM | disk | FTP | other *** search
/ Aminet 1 (Walnut Creek) / Aminet - June 1993 [Walnut Creek].iso / aminet / mus / play / stp133.lha / STP.doc < prev    next >
Text File  |  1993-02-15  |  18KB  |  466 lines

  1. ******************************************************************************
  2. ***                                                                        ***
  3. ***                        D.E.R. ST-Player V1.33                          ***
  4. ***                                                                        ***
  5. ******************************************************************************
  6. ***                                                                        ***
  7. ***                                                                        ***
  8. ***    Implemented by:      Wolfgang BREYHA                                ***
  9. ***                         Großer Ring 42                                 ***
  10. ***                         1130 VIENNA                                    ***
  11. ***                         AUSTRIA                                        ***
  12. ***                                                                        ***
  13. ***                                                                        ***
  14. ******************************************************************************
  15. ***                                                                        ***
  16. ***    This Program is FREEWARE and it may be freely distributed if:       ***
  17. ***                                                                        ***
  18. ***     - The Program, it's Icon and the .doc-Files are all copied         ***
  19. ***       together                                                         ***
  20. ***     - No Changes (except crunching) are made without                   ***
  21. ***       MY permission!!!                                                 ***
  22. ***     - your name is Fred Fish. (Please include it in your Library!!)    ***
  23. ***     - saled only for prime cost+copy fee(5DM or 5US$)                  ***
  24. ***       (any disputes arising hereunder will be settled before a         ***
  25. ***        competent Vienna court of law!!!)                               ***
  26. ***                                                                        ***
  27. ******************************************************************************
  28. ***                                                                        ***
  29. ***                                                                        ***
  30. ***    Come to:             D.E.R. Computer-Club                           ***
  31. ***                         Stiegerg. 5/1                                  ***
  32. ***                         1150 VIENNA                                    ***
  33. ***                         AUSTRIA                                        ***
  34. ***                                                                        ***
  35. ***                                                                        ***
  36. ******************************************************************************
  37.  
  38. Before you use Player please read this:
  39. ---------------------------------------
  40.  
  41. I have worked almost 3 years on this code and i think it's a very nice
  42. program. So I have a little request! I don't want to earn any money with my 
  43. Player, because I have written it for fun and for my own use, 
  44. but please LET ME KNOW, IF YOU FIND SOME BUGS!
  45.  
  46. If you really want to send me some money, then do it! I'll take it, and it
  47. makes no difference how much! Maybe I'm the first Freeware-Coder, who earns
  48. millions with his program. So help me being the first one and send only
  49. sums bejond one million US-Dollar!!
  50.  
  51. If you have trouble with a module please send me a disk with it!
  52. You'll get it back with a new version of STP!!
  53.  
  54. After I've got my A2000 with A2630, Kick 2.0 and ECS, I've tried to fix the
  55. problems with Cache, Kick 2.0, Workbench 2.1 and all the other troubles with
  56. this fucking fast machine!!
  57.  
  58. Many other Players have troubles with turboboards as fast as the
  59. G-Force030 50/50 (Protracker 2.2-3.0 too!!), STP not!!
  60. Since V1.33 all bugs on 68040CPU's are removed!
  61.  
  62. Version 1.1 is the first released Version. V1.0 was spread internal only!!
  63. But who knows?! Perhaps you have a copy of 1.0!?! 
  64.  
  65. What I'll never do:
  66. -------------------
  67.  
  68. I'll never build in other playroutines then the one of Soundtracker
  69. (and Clones), because there are so many good modules for ST (I've 140; 14 Mb)
  70. and there are enough other players playing all formats.
  71.  
  72. Needed Hardware:
  73. ----------------
  74.  
  75. Any Amiga, at least Kick 1.2 and a very good stereo amplifier!!!!
  76.  
  77. Needed Software:
  78. ----------------
  79.  
  80. Many Soundtracker-modules!!
  81. If you use MachIII please read the 'tactical hints using STP'!!!
  82.  
  83. Short discription:
  84. ------------------
  85.  
  86. D.E.R. ST-Player is a Soundtracker-Moduleplayer with some special features!
  87.  
  88. - 'Fire and Forget'-System (you will see what I mean)
  89. - fantastic Channel-Analyser!
  90. - 100% assembler
  91. - STP makes an own Process!!!
  92. - STP is full multitasking-compatible (except allocation of audio-cannels!)
  93. - STP works with 1(and more)MByte chipmem! (Ok, that's a feature of Kick1.3!)
  94. - STP should work on 680x0 processor cards!!
  95. - plays Soundtracker V2.0-V2.6, Noisetracker V1.0-V2.0 and
  96.         Protracker  -V2.3 Modules
  97. - If the screen is in background Player needs no CPU-Time!(Except Playroutine!!)
  98. - full filtercontrol
  99. - Position- and Notecontrol
  100. - Volumecontrol
  101. - NonStop loading
  102. - programmable
  103. - also handles PP20- and FileImploder-files!!
  104.   since V1.22 also XPK-files
  105. - Start from CLI and Workbench possible!!
  106. - (FOR EXPERIENCED USERS ONLY!!: Player is able to run objectmodules)
  107.  
  108. Usage:
  109. ------
  110.  
  111. STP [DIR-Name | Module-Name] [-m][-sxxx][-r][-n][-j][-a][-f][-d][-tx] [?]
  112.  
  113.  
  114.  
  115. Instruction:
  116. ============
  117.  
  118. Start from CLI:
  119. ---------------
  120.  
  121. Start STP with or without options. If no arguments are given, STP
  122. has following defaults:
  123.  
  124. - STP searches the file ENV:PlayerDir. There you can save the directory
  125.   where the modules are stored. If the file doesn't exist ->
  126. - default directory is 'ST-00:modules'
  127. - STP takes as much memory as he needs or he can catch.
  128. - the songs are played alphabetically (A-Z) (German chars are sorted correct!)
  129. - STP dosen't looks for 'mod.'-files only
  130. - STP loads the next song when the current one is finished
  131. - The 'B'-Cmd(Position-Jmp) of ST is enabled
  132. - Auto-Fade is off
  133. - Analysermode is set to high frequencies
  134. - Timemode is set to normal positionview
  135.  
  136. Options:
  137.    ?    -> Shows helpscreen!!
  138.  
  139.   -m    -> Player takes only files beginning with 'mod.' (not case-sensitive!!!)
  140.  
  141.   -sxxx -> Player uses only that amount of chipmem you have selected.
  142.            ('xxx' means the amount in KByte!!!! (xxx*1024=amount in Bytes!
  143.            I'm living in europe and here we're calculating with 1024 not 1000))
  144.            Songs longer than 'xxx'-KByte won't be loaded.
  145.  
  146.   -r    -> Player will randomize the sequence.
  147.  
  148.   -j    -> disables the Position-Jump command from ST.
  149.            (Very nice option for songs with a endless loop)
  150.  
  151.   -n    -> Player tries to load the next song if the current has 3 patterns
  152.            left to play. It only works if you have enough Fast-Mem!!
  153.  
  154.   -d    -> Switches the Mode-Button to On-position
  155.  
  156. since V1.1:
  157.   -f    -> Switches Auto-Fade On
  158.  
  159. since V1.3:
  160.   -tx   -> TimeMode; x=0 normal
  161.                      x=1 remaining Patterns
  162.                      x=2 Time
  163.  
  164. You can start Player also with a filename. Then Player switches 'Repeat' on and
  165. disables the 'Prev' and 'Next'-gadgets!!!
  166.  
  167.  
  168.  
  169. Start from Workbench:
  170. ---------------------
  171.  
  172. You can define a tooltype called 'SONGDIR'. STP loads all songs in this
  173. directory!!!
  174. 1. Click the STP-Icon once
  175. 2. Select 'Info' (or Information in Kick2.0) in the Workbench-Menu
  176. 3. Click on 'ADD' in the 'TOOL TYPES'-Bar
  177. 4. Type 'SONGDIR=' and the full directory-name you want. e.g.:'dh1:modules'
  178.    'modules' only is not enough!!!! (The tooltype itself is casesensitve!
  179.    Please type them all in upper case!
  180. 5. Now click on 'save'
  181. 6. doubleclick the STP-Icon and enjoy the music!!!
  182.  
  183. If you didn't spezify a SONGDIR-Tooltype, Player searches also for the 
  184. 'ENV:PlayerDir'-File. If available he uses it automatically!
  185.  
  186. I've included some other Tooltypes, too!! Defaults in ().
  187.  
  188. RANDOM   -> ON/(OFF);          e.g.:'RANDOM=ON';
  189. ANALYZER -> (ON)/OFF;
  190. NONSTOP  -> ON/(OFF);
  191. NOPOSJMP -> ON/(OFF);
  192. MODONLY  -> ON/(OFF);
  193. AMODE    -> ON/(OFF);          (up to Version V1.24->MODE)
  194.  
  195. MAXCHIP : sets maximum usage of CHIP-RAM!!
  196.           e.g.:'MAXCHIP=200' -> use 200K maximum
  197.  
  198. since V1.1:
  199. AUTOFADE -> ON/(OFF);
  200.  
  201. since V1.3:
  202. TIMEMODE -> (0)/1/2;           see CLI-Option <-tx>
  203.  
  204. While Player is running:
  205. ------------------------
  206.  
  207. If no ENV-File and no Dir-name was given, you first must turn the STP on!!
  208. Then STP asks you for a directory-path and reads this directory.
  209. Since V1.1 I use the ASL-Request (Kick 2.0 only)
  210.  
  211. Now STP loads the first module. (Display shows 'loading Song...')
  212.  
  213. Then STP starts playing.......
  214.  
  215.  
  216.  
  217. Now you have the following possibilities:
  218.  
  219. Filter-control:
  220. ---------------
  221. These are the two switches on the right side from the Volume-control.
  222.  
  223.                 On        Auto   <- Function if Switch is pressed
  224.      Switch ->  ++   ||    ++    <- Switch    
  225.                 Off      Manual  <- Function if Switch is released
  226.                       ^
  227.                     Lamp
  228.  
  229. In the 'Manual'-position (default) the 'E'-command from Soundtracker is
  230. ignored (but internal stored!!) and the Filter is set by the on/off-switch.
  231.  
  232. If switched to 'Auto' the filter is set as given from the last ST-command.
  233. The other switch is now disabled and the filtercontrol is given back to the
  234. playroutine!!
  235.  
  236. Position- and Note-control:
  237. ---------------------------
  238. Below the display you can notice two pairs of gadgets. ( < > )
  239. The left pair controls the position and the right pair controls the note.
  240. The position-gadgets have a little delay!!
  241. Try it and you will know how to use them.
  242.  
  243. Volume-control:
  244. ----------------
  245. With the proportinal gadget you can control the volume.
  246.  
  247. Song-control:
  248. --------------
  249. On the right side of the Player are four gadgets.
  250. |<,>|   : Load next,previous song in sequence.
  251. Stop    : Will stop playing. Now you can try to open the Player.
  252. Play    : Play/Pause toggle!
  253.  
  254. Below the display you notice two other switches:
  255.  
  256. RepS    : Repeat the song. As long as Repeat is highlighted in the display
  257.           Player repeats the song.
  258. Select  : Klick on it. Now you can see a '>' in front of the current song.
  259.           Use the |< and >| gadgets to select a song.
  260.           Since V1.1 this buttons are repeated in this case!
  261.           If you have found the right name press the play-gadget and Player
  262.           reads the song at once.
  263.  
  264.  
  265. Sequence-control:
  266. ------------------
  267. STP is full programmable.
  268.  
  269. Press the "Prog"-gadget
  270. You are now in the Program-Mode. (shown in the display!!)
  271. Choose a song with the |< and >| gadgets.
  272. Now you have the following possibilities:
  273. 'Prog'  : Toggles between programmed and cleared-status.
  274.           stored in the sequence -> you see 'xx P'<- Nr. in the sequence
  275.           cleared -> '   C'
  276. 'Select': Select all songs
  277. 'Random': randomize the current sequence
  278. 'Stop'  : Clear the program and cancel the Program-Mode
  279. 'Play'  : Start playing with the first song in sequence
  280.  
  281. How to clear a program:
  282. -----------------------
  283. Press the Stop-Button twice
  284.  
  285.  
  286. Random (V1.1):
  287. --------------
  288. Random is now available in normal play-mode.
  289. Simply press the RANDOM-Button and a program will be initialised!
  290.  
  291. Auto-Fade (V1.1):
  292. -----------------
  293. This means, player fades the volume on the last Pattern to zero.
  294. This is usefull, if an endless song is played!
  295.  
  296. Time (V1.3):
  297. ------------
  298. You can toggle between three modes
  299. 1.) Normal mode
  300. 2.) Remaining patterns and notes     (Thanks to Andreas Kirchwitz from Berlin)
  301. 3.) Time mode. 
  302.  
  303. How to change directory:
  304. ------------------------
  305. Press Stop and then Open (on the disc-drawer)
  306. Now Player asks again which directory you want!!
  307.  
  308. V1.1: If your machine works under Kickstart 2.0, you can make this with the
  309.       ASL-Requester!
  310.  
  311. How to use the Analyser:
  312. ------------------------
  313. There are four buttons!!
  314.  
  315.    ++     <-  Mode
  316.  
  317.    ++     <-  Analyser On/Off
  318.  
  319.    ++     <-  VU-Meter On/Off
  320.  
  321.   ++++    <-  Power-Switch
  322.  
  323. Mode:   I calculate which part of a sample is played each vertical blank.
  324.         Each of the 4 windows shows 40 values of the actual part.
  325.         The parts are often larger then 40 bytes and so i've found two
  326.         ways to show them
  327.         Released Button:
  328.                 I show the first 40 bytes of the actual part then i add the
  329.                 length of the remaining part.
  330.                 (Good to display high frequencies!)
  331.         Pressed Button:
  332.                 I calculate the length of the part diveded by 40. Now I show
  333.                 the first byte then a add the result of the upper expression.
  334.                 Then i show the next byte and so on...
  335.                 (Good to display low frequencies)
  336.   
  337.  
  338. Information for musicians:
  339. --------------------------
  340.  
  341. I have included the information-system from IntuiTracker!!
  342. You can use the samplenames for messages.
  343. Each message (samplename) starting with '#' is displayed.
  344. Player stops at the first samplename which begins not with '#'!!
  345.  
  346.  
  347. tactical hints using STP:
  348. -------------------------
  349.  
  350. Player checks each file if it's a ST-Module.
  351. It's possible (0.0001%) that the check-routine failes and he tries to play
  352. a file which is not a ST-Module! Please remove this file from your 
  353. directory for safe usage!!
  354.  
  355. Using powerpacked Files requires the PowerPacker.library in libs: !!!
  356. For XPK you need the xpkmaster.library and at least one sublibrary
  357.  
  358. If you have only 512KB ChipMem use the -s option (MAXCHIP) to leave free Mem!
  359. e.g.: -s200 (I've always used this one, but now I've 1MB-Chip!!)
  360.  
  361. STP always allocates the size of the largest modules, because there are
  362. many troubles always freeing a block and allocating the next one.
  363. Memory get's more and more fragmented, until STP is not longer able
  364. to allocate the songmem!! I think this solution is better for longtime-
  365. usage and always remember Amigas with fewer then 1MB-Chipmem are ...
  366. (Try Intuitracker, he uses the other way. After about 10 Songs it's over!!)
  367.  
  368. If you are running MACHIII V3.0 get a version V3.1 or higher, cause of a
  369. major bug in V3.0. Every time you will run Player while MACHIII is running,
  370. your machine will stop every activity without a guru!!
  371. First I've thought that it was my fault, but after it works with V3.1 ...
  372.  
  373. STP needs much time in his VB-interuptroutine. It's possible that you get
  374. in trouble running other programms using VB-Int's too. (I haven't recognized
  375. any problems of this nature, but it's possible!!).
  376.  
  377.  
  378.  
  379. AND NOW SOME HINTS FOR VERY EXPERIENCED USERS ONLY!
  380. ---------------------------------------------------
  381.  
  382. STP is able to run objectmodules! But take care, it's up to the module
  383. to work with STP!!!
  384. You ask why? There are many other good soundprograms available on AMIGA
  385. (for example SoundFX,TFMX..). If you got an executeable file which playes the 
  386. song rename it into 'run.???????'. When STP recognizes such a file
  387. he tries to load it with 'loadseg()' and jumps directly into it's code!!
  388. Now it's your problem how you stop playing and return to STP!
  389.  
  390. There is another problem with this feature!
  391. I have to give back all my memory starting the Obj-Mod.
  392. And after all I must get it back!! Do you know what I mean?!?!
  393. No! It's quiet simple!! It's possible that there isn't enough memory left
  394. after this action! STP will then quit playing!!!
  395. That's why I'm always allocating the length of the largest Module!!!!
  396. Because that's the only way to be sure not running out of memory!
  397. So please hold your memoryconsumtion low (use -s option. Usually I use -s200!!)
  398.  
  399. I have found a new problem since STP makes an own precess!!!
  400. Some playroutines test if the process is started from CLI. If not they wait
  401. for a WB-Message!!! It's on you to remove this part of the code!!
  402. A little hint: look out for a FindTask(0L) (sub.l a1,a1; jsr -294(a6))
  403. then look if the programm tests 172(a?) of the process-structure.
  404. Remove exactly this test! But be careful. The code must always go the way
  405. it goes started from CLI!
  406.  
  407. But after all that troubleshooting I have to say you: I did it!!!
  408.  
  409.  
  410. Informations about the Programm:
  411. --------------------------------
  412.  
  413. Start of coding:        April 1990
  414. SourceCode:             137kB - pure assembler-source (~8100 lines)
  415. ObjectCode:              35kB
  416. Assembler:              ASM-One (in the beginning Masterseka 1.80)
  417. GFX:                     45kB - 3 Planes,Hires(640*170) (also pixled by me)
  418.  
  419.  
  420. Warning:
  421. --------
  422.  
  423.                       I give no garantees using Player.
  424.              System crashes and other unkown bugs are possible!!
  425.                         Use Player on your own risk!!!
  426.  
  427. Player only reads data! It's impossible that Player
  428. destroys data on a Disk or HD. (only in your RAM, HeHeHe!!)
  429.  
  430.         All my friends are using Player since Summer 1990 with their HD and
  431.                            they have no problems!!
  432.  
  433. But nobody is perfect!! And my name is certainly not 'Nobody'!
  434. So please let me know all the bugs you notice!!
  435.  
  436. Last but not least thanks to:
  437.  
  438.         Michael Matzl(Mad Matz), Reinhard Franz(Killersoft),
  439.         Erwin Kloibhofer(Hendl-Schnitzel), Stefan Kainz(Elchi),
  440.         Dieter Henkel, Peter Scherbaum
  441.         and some members from the 'D.E.R. Computerclub'
  442.  
  443.         for beta-testing, bugreports, good ideas and very good friendship.
  444.  
  445.  
  446.         all of you out there in the whole world for using my STP.
  447.         and always remember: it's FREEWARE so spread it around the world.    
  448.  
  449.         to all of you sending me bugreports, ideas and funny mails.
  450.  
  451.                                            //
  452.         Commodore for development of the \X/AMIGA.
  453.                                           
  454.  
  455. Contacts:
  456. ---------
  457.  
  458. write to:       Wolfgang BREYHA
  459.                 Großer Ring 42
  460.                 1130  Vienna
  461.                 Austria                 (not Australia, no Kangaroos!!
  462.                                          we are those with Lipizaner, you know)
  463.  
  464. E-Mail:         ookummer@swwwnext.tuwien.ac.at
  465.                 Boys and girls, I *love* mail!!
  466.